home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 41 / Amiga Format CD41 (1999-06)(Future Publishing)(GB)[!][issue 1999-07].iso / -seriously_amiga- / misc / notes / deutsch / bassschlüssel.file < prev    next >
Text File  |  1999-04-19  |  38KB  |  1,269 lines

  1. /* Unterprogramm zu Noten.pprx */
  2.  
  3. signal on halt
  4. signal on break_c
  5. signal on break_e
  6. signal on break_d
  7. call ppm_SetStyle(N)
  8. call ppm_SetMagMode(250)
  9. call ppm_UpdateScreen()
  10.  
  11. noteneingabe:
  12.     sysform = "Notensystemart:2"'0a'x"Anzahl Vorzeichen:2"'0a'x"kleinster Notenwert:4"
  13.     systemform = ppm_Getform("Bitte eingeben ... (nichts=ABBRUCH)", 3, sysform)
  14.     if systemform = '' then exit_msg("Abbruch!")
  15.     parse var systemform systemart '0a'x vz '0a'x xgrd
  16.     if vz == '' then vz = 0
  17.  
  18.     select
  19.     when systemart == '2' then zdist = 4
  20.     when systemart == '1v' then zdist = 2
  21.     when systemart == '1b' then zdist = 2
  22.     when systemart == '' then exit_msg("Abbruch!")
  23.     when vz == '' then exit_msg("Abbruch!")
  24.     otherwise noteneingabe()
  25.     end
  26.     zdist2 = zdist-2
  27.     if xgrd == '' then  exit_msg("Abbruch")
  28.     select
  29.      when xgrd == '1' then xg =0.7
  30.      when xgrd == '2' then xg =1.4
  31.      when xgrd == '4' then xg =2.8
  32.      when xgrd == '8' then xg =5.6
  33.      when xgrd == '16' then xg =11.2
  34.      when xgrd == '' then exit_msg("Abbruch!")
  35.      otherwise noteneingabe()
  36.     end
  37.  
  38.    /* Punktgröße der Noten */
  39.    notepkt = 26
  40.    call ppm_SetJustification(0)
  41.  
  42.    zz = 0 /* Zeilenzähler */
  43.    notex = (2+(vz*0.175))
  44.    page = ppm_CurrentPage()
  45.  
  46. pfad:
  47.    do
  48.            eingabe = ppm_GetFileName("Bitte Notenscriptfile wählen ...", "Noten:","")
  49.            res = OPEN(notenfile, eingabe, 'R')
  50.            if res == 0 then
  51.              do
  52.                  fres = ppm_inform(2,"Fehler in der Eingabe, oder File existiert nicht !!!","Nochmal","Abbruch")
  53.                  if fres == 0 then pfad()
  54.                  else exit_msg("Abbruch!")
  55.              end
  56.            call ppm_ShowStatus("OK, ich arbeite ...")
  57.            auslesen(notenfile)
  58.    end
  59.  
  60.     /* x-Abstände der Noten zueinander */
  61. auslesen:
  62.         do
  63.           parse arg file
  64.           noten = READCH(file, 4000)
  65.           i=1
  66.           do forever
  67.             nw = word(noten, i)
  68.             nn = word(noten, i+1)
  69.             al = word(noten, i+2)
  70.             if nw == 'P' then nw = 'p'
  71.             if nw == 'D' then nw = 'd'
  72.             if nw == 'L' then nw = 'l'
  73.             if nw == 'T' then nw = 't'
  74.             if nn == 'T' then nn = 't'
  75.             if nw == 'J' then nw = 'j'
  76.             if nw == 'E' then nw = 'e'
  77.             select
  78.               when al == (X2C(410a)) then al = 'a'
  79.               when al == (X2C(610a)) then al = 'a'
  80.               when al == (X2C(300a)) then al = '0'
  81.               otherwise exit_msg("Da war ein Fehler!")
  82.             end
  83.  
  84.             select
  85.               when nn=='DB1' then nn = 'Db1'
  86.               when nn=='EB1' then nn = 'Eb1'
  87.               when nn=='GB1' then nn = 'Gb1'
  88.               when nn=='AB1' then nn = 'Ab1'
  89.               when nn=='DB2' then nn = 'Db2'
  90.               when nn=='EB2' then nn = 'Eb2'
  91.               when nn=='GB2' then nn = 'Gb2'
  92.               when nn=='AB2' then nn = 'Ab2'
  93.               when nn=='DB3' then nn = 'Db3'
  94.               when nn=='EB3' then nn = 'Eb3'
  95.               when nn=='GB3' then nn = 'Gb3'
  96.               otherwise NOP
  97.             end
  98.  
  99.             call auswahl()
  100.             i=i+3
  101.           end
  102.         end
  103.  
  104. auswahl:
  105. do
  106.     select
  107.       when nw == 'j' then do
  108.                           zz = 0   /* Zeilenzähler */
  109.                           notex = (2+(vz*0.175))
  110.                           return
  111.                           end
  112.       when nw == 'e' then
  113.         do
  114.             call ppm_ClearStatus()
  115.             exit_msg("Geschafft!")
  116.         end
  117.       when nw == 's' then
  118.           do
  119.           xw = xg/16
  120.           nw='x'
  121.           yv = 0
  122.           end
  123.       when nw  == 'S' then
  124.           do
  125.           xw = xg/16
  126.           nw='X'
  127.           yv = 0.47
  128.           end
  129.       when nw == 'a' then
  130.           do
  131.           xw = xg/8
  132.           nw='e'
  133.           yv = 0
  134.           end
  135.       when nw == 'A' then
  136.           do
  137.           xw = xg/8
  138.           nw='E'
  139.           yv = 0.47
  140.           end
  141.       when nw == 'v' then
  142.           do
  143.           xw = xg/4
  144.           nw='q'
  145.           yv = 0
  146.           end
  147.       when nw == 'V' then
  148.           do
  149.           xw = xg/4
  150.           nw='Q'
  151.           yv = 0.47
  152.           end
  153.       when nw == 'h' then
  154.           do
  155.           xw = xg/2
  156.           yv = 0
  157.           end
  158.       when nw == 'H' then
  159.           do
  160.           xw = xg/2
  161.           yv = 0.47
  162.           end
  163.       when nw == 'g' then
  164.           do
  165.           xw = xg
  166.           nw='w'
  167.           yv = 0
  168.           end
  169.       when nw == 'G' then
  170.           do
  171.           xw = xg
  172.           nw='W'
  173.           yv = 0.47
  174.           end
  175.  
  176.       when nw == 'pk' then
  177.           do
  178.             if notex < 3 then
  179.             do
  180.               notex = bakx
  181.               zz = zz - zdist
  182.               call ppm_SetSize(25)
  183.               box#id = ppm_CreateBox(notex+0.4, yw+zz+0.26-yv, 0.3, 0.9, 0)
  184.               call ppm_SetSize(20)
  185.               call ppm_TextIntoBox(box#id, 'd')
  186.             end
  187.             else
  188.             do
  189.               call ppm_SetSize(25)
  190.               box#id = ppm_CreateBox(notex-xw+0.4, yw+zz+0.26-yv, 0.3, 0.9, 0)
  191.               call ppm_SetSize(20)
  192.               call ppm_TextIntoBox(box#id, 'd')
  193.             end
  194.  
  195.              select
  196.                  when nn == '1' then
  197.                  do
  198.                   xw = xg
  199.                   notex = notex+xw
  200.                  end
  201.                  when nn == '2' then
  202.                  do
  203.                   xw = xg/2
  204.                   notex = notex+xw
  205.                  end
  206.                  when nn == '4' then
  207.                  do
  208.                   xw = xg/4
  209.                   notex = notex+xw
  210.                  end
  211.                  when nn == '8' then
  212.                  do
  213.                   xw = xg/8
  214.                   notex = notex+xw
  215.                  end
  216.                  when nn == '16' then
  217.                  do
  218.                   xw  = xg/16
  219.                   notex = notex+xw
  220.                  end
  221.                  when nn == 't' then
  222.                  do
  223.                   xw  = 0.2
  224.                   notex = notex+xw
  225.                  end
  226.                  otherwise
  227.                   do
  228.                    call ppm_ClearStatus()
  229.                    exit_msg("Da war ein Fehler")
  230.                   end
  231.              end
  232.            if notex >=18.7 then
  233.                do
  234.                  notex = (2+(vz*0.175))
  235.                  zz = zz + zdist
  236.                end
  237.            return
  238.           end
  239.  
  240.       when nw == 'PK' then
  241.           do
  242.             if notex < 3 then
  243.             do
  244.               notex = bakx
  245.               zz = zz - zdist
  246.               call ppm_SetSize(25)
  247.               box#id = ppm_CreateBox(notex+0.4, yw+zz+0.26-yv, 0.3, 0.9, 0)
  248.               call ppm_SetSize(20)
  249.               call ppm_TextIntoBox(box#id, 'd')
  250.             end
  251.             else
  252.             do
  253.               call ppm_SetSize(25)
  254.               box#id = ppm_CreateBox(notex-xw+0.4, yw+zz+0.26-yv, 0.3, 0.9, 0)
  255.               call ppm_SetSize(20)
  256.               call ppm_TextIntoBox(box#id, 'd')
  257.             end
  258.            select
  259.                when nn == '1' then
  260.                 do
  261.                  xw = xg
  262.                  notex = notex+xw
  263.                 end
  264.                when nn == '2' then
  265.                 do
  266.                  xw = xg/2
  267.                  notex = notex+xw
  268.                 end
  269.                when nn == '4' then
  270.                 do
  271.                  xw = xg/4
  272.                  notex = notex+xw
  273.                 end
  274.                when nn == '8' then
  275.                 do
  276.                  xw = xg/8
  277.                  notex = notex+xw
  278.                 end
  279.                when nn == '16' then
  280.                 do
  281.                  xw  = xg/16
  282.                  notex = notex+xw
  283.                 end
  284.                when nn == 't' then
  285.                 do
  286.                  xw  = 0.2
  287.                  notex = notex+xw
  288.                 end
  289.                otherwise
  290.                do
  291.                 call ppm_ClearStatus()
  292.                 exit_msg("Da war ein Fehler")
  293.                end
  294.            end
  295.            if notex >=18.7 then
  296.              do
  297.                notex = (2+(vz*0.175))
  298.                zz = zz + zdist
  299.              end
  300.            return
  301.           end
  302.  
  303.  
  304.       /* Taktstrich */
  305.       when nw == 't' then
  306.           do
  307.            call ppm_SetLineWeight(0.25)
  308.            call ppm_DrawLine(notex, 2+zz+zdist2, notex, zdist2+2.8+zz)
  309.            notex = notex+0.2
  310.            return
  311.           end
  312.  
  313.  
  314.       when nw == 'p' | when nw == 'P' then
  315.       do
  316. pausenwert:
  317.         x = notex
  318.         select
  319.             when nn == '1' then do
  320.  
  321.                 y = zdist2+2.29+zz
  322.                 call ppm_SetLineWeight(4)
  323.                 call ppm_DrawLine(x, y, x+0.4, y)
  324.                 call ppm_SetLineWeight(0.25)
  325.                 xw = xg
  326.                 notex = notex+xw
  327.             end
  328.  
  329.             when nn == '2' then do
  330.  
  331.                 y = zdist2+2.33+zz
  332.                 call ppm_SetLineWeight(4)
  333.                 call ppm_DrawLine(x, y, x+0.4, y)
  334.                 call ppm_SetLineWeight(0.25)
  335.                 xw = xg/2
  336.                 notex = notex+xw
  337.             end
  338.  
  339.             when nn == '4' then do
  340.  
  341.                 y = zdist2+2.07+zz
  342.                 Pbox = ppm_CreateBox(x, y, 0.59, 0.86, 0)
  343.                 boxnm = ppm_DocNextBox(Pbox)
  344.                 call ppm_DeleteContents(boxnm)
  345.                 call ppm_ImportGraphic(boxnm, 'Genies:noten_pausen/viertelPause', pause)
  346.                 xw = xg/4
  347.                 notex = notex+xw
  348.             end
  349.  
  350.             when nn == '8' then do
  351.  
  352.                 y = zdist2+2.21+zz
  353.                 Pbox = ppm_CreateBox(x, y, 0.27, 0.42, 0)
  354.                 boxnm = ppm_DocNextBox(Pbox)
  355.                 call ppm_DeleteContents(boxnm)
  356.                 call ppm_ImportGraphic(boxnm, 'Genies:noten_pausen/achtelPause', pause)
  357.                 xw = xg/8
  358.                 notex = notex+xw
  359.             end
  360.  
  361.             when nn == '16' then do
  362.  
  363.                 y = zdist2+2.21+zz
  364.                 Pbox = ppm_CreateBox(x, y, 0.27, 0.42, 0)
  365.                 boxnm = ppm_DocNextBox(Pbox)
  366.                 call ppm_DeleteContents(boxnm)
  367.                 call ppm_ImportGraphic(boxnm, 'Genies:noten_pausen/sechzehntelPause', pause)
  368.                 xw = xg/16
  369.                 notex = notex+xw
  370.             end
  371.         otherwise
  372.                do
  373.                 call ppm_ClearStatus()
  374.                 exit_msg("Da war ein Fehler")
  375.                end
  376.         end
  377.         if notex >=18.7 then
  378.           do
  379.             notex = (2+(vz*0.175))
  380.             zz = zz + zdist
  381.           end
  382.         return
  383.       end
  384.  
  385.     /* Freiräume "space" */
  386.  
  387.       when nw == 'l' then
  388.         do
  389.  
  390.            /* wert = ppm_GetForm("1/1 1/2 1/4 1/8 1/16 ...?", 2, "1 , 2, 4, 8, 16") */
  391.            select
  392.                when nn == '1' then
  393.                do
  394.                 xw = xg
  395.                 notex = notex+xw
  396.                end
  397.                when nn == '2' then
  398.                do
  399.                 xw = xg/2
  400.                 notex = notex+xw
  401.                end
  402.                when nn == '4' then
  403.                do
  404.                 xw = xg/4
  405.                 notex = notex+xw
  406.                end
  407.                when nn == '8' then
  408.                do
  409.                 xw = xg/8
  410.                 notex = notex+xw
  411.                end
  412.                when nn == '16' then
  413.                do
  414.                 xw  = xg/16
  415.                 notex = notex+xw
  416.                end
  417.                when nn == 't' then
  418.                do
  419.                 xw  = 0.2
  420.                 notex = notex+xw
  421.                end
  422.                when nn == 0 then do
  423.                end
  424.                otherwise
  425.                do
  426.                 call ppm_ClearStatus()
  427.                 exit_msg("Da war ein Fehler")
  428.                end
  429.            end
  430.            if notex >=18.7 then
  431.              do
  432.                notex = (2+(vz*0.175))
  433.                zz = zz + zdist
  434.              end
  435.            return
  436.         end
  437.       when nw == 'ENDE' then nw = 'ende'
  438.       when nw == 'ende' then
  439.         do
  440.             call ppm_ClearStatus()
  441.             exit_msg("Geschafft!")
  442.         end
  443.       otherwise
  444.                do
  445.                 call ppm_ClearStatus()
  446.                 exit_msg("Da war ein Fehler")
  447.                end
  448.     end
  449.  
  450.         /* y-Raster der Noten - Notenhälse nach oben (y-Position der Box) */
  451.  
  452.     call ppm_SetLineWeight(0.25)
  453.  
  454.     select
  455.  
  456.         when nn=='g#3'  then
  457.         do
  458.             yw = 0.745 + zdist2
  459.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
  460.             call ppm_SetSize(20)
  461.             call ppm_TextIntoBox(box#id, 's')
  462.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  463.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  464.             call ppm_DrawLine(notex, zz+zdist2+1.4, (notex+0.4), zz+zdist2+1.4)
  465.         end
  466.  
  467.         when nn=='g3'  then
  468.         do
  469.             yw = 0.745 + zdist2
  470.             if al == 'a' then call auflhoch()
  471.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  472.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  473.             call ppm_DrawLine(notex, zz+zdist2+1.4, (notex+0.4), zz+zdist2+1.4)
  474.         end
  475.  
  476.         when nn=='gb3' then
  477.         do
  478.             yw = 0.745 + zdist2
  479.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
  480.             call ppm_SetSize(20)
  481.             call ppm_TextIntoBox(box#id, 'f')
  482.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  483.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  484.             call ppm_DrawLine(notex, zz+zdist2+1.4, (notex+0.4), zz+zdist2+1.4)
  485.         end
  486.  
  487.         when nn=='f#3'  then
  488.         do
  489.             yw = 0.845 + zdist2
  490.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
  491.             call ppm_SetSize(20)
  492.             call ppm_TextIntoBox(box#id, 's')
  493.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  494.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  495.         end
  496.  
  497.         when nn=='f3'  then
  498.         do
  499.             yw = 0.845 + zdist2
  500.             if al == 'a' then call auflhoch()
  501.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  502.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  503.         end
  504.  
  505.         when nn=='e#3'  then
  506.         do
  507.             yw = 0.945 + zdist2
  508.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
  509.             call ppm_SetSize(20)
  510.             call ppm_TextIntoBox(box#id, 's')
  511.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  512.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  513.         end
  514.  
  515.         when nn=='e3'  then
  516.         do
  517.             yw = 0.945 + zdist2
  518.             if al == 'a' then call auflhoch()
  519.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  520.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  521.         end
  522.  
  523.         when nn=='eb3' then
  524.         do
  525.             yw = 0.945 + zdist2
  526.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
  527.             call ppm_SetSize(20)
  528.             call ppm_TextIntoBox(box#id, 'f')
  529.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  530.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  531.         end
  532.  
  533.         when nn=='d#3'  then
  534.         do
  535.             yw = 1.045 + zdist2
  536.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
  537.             call ppm_SetSize(20)
  538.             call ppm_TextIntoBox(box#id, 's')
  539.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  540.         end
  541.  
  542.         when nn=='d3' then
  543.         do
  544.             yw = 1.045 + zdist2
  545.             if al == 'a' then call auflhoch()
  546.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  547.         end
  548.  
  549.         when nn=='db3'    then
  550.         do
  551.             yw = 1.045 + zdist2
  552.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
  553.             call ppm_SetSize(20)
  554.             call ppm_TextIntoBox(box#id, 'f')
  555.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  556.         end
  557.  
  558.         when nn=='c#3'    then
  559.         do
  560.             yw = 1.145 + zdist2
  561.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
  562.             call ppm_SetSize(20)
  563.             call ppm_TextIntoBox(box#id, 's')
  564.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  565.         end
  566.  
  567.         when nn=='c3'     then
  568.         do
  569.             yw = 1.145 + zdist2
  570.             if al == 'a' then call auflhoch()
  571.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  572.         end
  573.  
  574.         when nn=='h2'     then
  575.         do
  576.             yw = 1.245 + zdist2
  577.             if al == 'a' then call auflhoch()
  578.         end
  579.         when nn=='b2'     then
  580.         do
  581.             yw = 1.245 + zdist2
  582.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
  583.             call ppm_SetSize(20)
  584.             call ppm_TextIntoBox(box#id, 'f')
  585.         end
  586.  
  587.         when nn=='a#2'    then
  588.         do
  589.             yw = 1.345 + zdist2
  590.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
  591.             call ppm_SetSize(20)
  592.             call ppm_TextIntoBox(box#id, 's')
  593.         end
  594.  
  595.         when nn=='a2'     then
  596.         do
  597.             yw = 1.345 + zdist2
  598.             if al == 'a' then call auflhoch()
  599.         end
  600.         when nn=='ab2'    then
  601.         do
  602.             yw = 1.345 + zdist2
  603.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
  604.             call ppm_SetSize(20)
  605.             call ppm_TextIntoBox(box#id, 'f')
  606.         end
  607.  
  608.         when nn=='g#2'    then
  609.         do
  610.             yw = 1.445 + zdist2
  611.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
  612.             call ppm_SetSize(20)
  613.             call ppm_TextIntoBox(box#id, 's')
  614.         end
  615.  
  616.         when nn=='g2'     then
  617.         do
  618.             yw = 1.445 + zdist2
  619.             if al == 'a' then call auflhoch()
  620.         end
  621.         when nn=='gb2'    then
  622.         do
  623.             yw = 1.445 + zdist2
  624.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
  625.             call ppm_SetSize(20)
  626.             call ppm_TextIntoBox(box#id, 'f')
  627.         end
  628.  
  629.         when nn=='f#2'    then
  630.         do
  631.             yw = 1.545 + zdist2
  632.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
  633.             call ppm_SetSize(20)
  634.             call ppm_TextIntoBox(box#id, 's')
  635.         end
  636.  
  637.         when nn=='f2' then
  638.         do
  639.             yw = 1.545 + zdist2
  640.             if al == 'a' then call auflhoch()
  641.         end
  642.         when nn=='e#2'  then
  643.         do
  644.             yw = 1.645 + zdist2
  645.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
  646.             call ppm_SetSize(20)
  647.             call ppm_TextIntoBox(box#id, 's')
  648.         end
  649.         when nn=='e2'     then
  650.         do
  651.             yw = 1.645 + zdist2
  652.             if al == 'a' then call auflhoch()
  653.         end
  654.         when nn=='eb2'    then
  655.         do
  656.             yw = 1.645 + zdist2
  657.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
  658.             call ppm_SetSize(20)
  659.             call ppm_TextIntoBox(box#id, 'f')
  660.         end
  661.  
  662.         when nn=='d#2'    then
  663.         do
  664.             yw = 1.745 + zdist2
  665.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
  666.             call ppm_SetSize(20)
  667.             call ppm_TextIntoBox(box#id, 's')
  668.         end
  669.  
  670.         when nn=='d2'     then
  671.         do
  672.             yw = 1.745 + zdist2
  673.             if al == 'a' then call auflhoch()
  674.         end
  675.         when nn=='db2'    then
  676.         do
  677.             yw = 1.745 + zdist2
  678.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
  679.             call ppm_SetSize(20)
  680.             call ppm_TextIntoBox(box#id, 'f')
  681.         end
  682.  
  683.         when nn=='c#2'    then
  684.         do
  685.             yw = 1.845 + zdist2
  686.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
  687.             call ppm_SetSize(20)
  688.             call ppm_TextIntoBox(box#id, 's')
  689.         end
  690.  
  691.         when nn=='c2'     then
  692.         do
  693.             yw = 1.845 + zdist2
  694.             if al == 'a' then call auflhoch()
  695.         end
  696.         when nn=='h1'     then
  697.         do
  698.             yw = 1.945 + zdist2
  699.             if al == 'a' then call auflhoch()
  700.         end
  701.         when nn=='b1'     then
  702.         do
  703.             yw = 1.945 + zdist2
  704.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
  705.             call ppm_SetSize(20)
  706.             call ppm_TextIntoBox(box#id, 'f')
  707.         end
  708.  
  709.         when nn=='a#1'    then
  710.         do
  711.             yw = 2.045 + zdist2
  712.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
  713.             call ppm_SetSize(20)
  714.             call ppm_TextIntoBox(box#id, 's')
  715.         end
  716.  
  717.         when nn=='a1'     then
  718.         do
  719.             yw = 2.045 + zdist2
  720.             if al == 'a' then call auflhoch()
  721.         end
  722.         when nn=='ab1'    then
  723.         do
  724.             yw = 2.045 + zdist2
  725.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
  726.             call ppm_SetSize(20)
  727.             call ppm_TextIntoBox(box#id, 'f')
  728.         end
  729.  
  730.         when nn=='g#1'    then
  731.         do
  732.             yw = 2.145 + zdist2
  733.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
  734.             call ppm_SetSize(20)
  735.             call ppm_TextIntoBox(box#id, 's')
  736.         end
  737.  
  738.         when nn=='g1'     then
  739.         do
  740.             yw = 2.145 + zdist2
  741.             if al == 'a' then call auflhoch()
  742.         end
  743.         when nn=='gb1'    then
  744.         do
  745.             yw = 2.145 + zdist2
  746.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
  747.             call ppm_SetSize(20)
  748.             call ppm_TextIntoBox(box#id, 'f')
  749.         end
  750.  
  751.         when nn=='f#1'    then
  752.         do
  753.             yw = 2.245 + zdist2
  754.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
  755.             call ppm_SetSize(20)
  756.             call ppm_TextIntoBox(box#id, 's')
  757.         end
  758.  
  759.         when nn=='f1'     then
  760.         do
  761.             yw = 2.245 + zdist2
  762.             if al == 'a' then call auflhoch()
  763.         end
  764.  
  765.         when nn=='e#1'  then
  766.         do
  767.             yw = 2.345 + zdist2
  768.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
  769.             call ppm_SetSize(20)
  770.             call ppm_TextIntoBox(box#id, 's')
  771.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  772.         end
  773.         when nn=='e1' then
  774.         do
  775.             yw = 2.345 + zdist2
  776.             if al == 'a' then call auflhoch()
  777.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  778.         end
  779.  
  780.         when nn=='eb1'  then
  781.         do
  782.             yw = 2.345 + zdist2
  783.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
  784.             call ppm_SetSize(20)
  785.             call ppm_TextIntoBox(box#id, 'f')
  786.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  787.         end
  788.  
  789.         when nn=='d#1'  then
  790.         do
  791.             yw = 2.445 + zdist2
  792.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
  793.             call ppm_SetSize(20)
  794.             call ppm_TextIntoBox(box#id, 's')
  795.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  796.         end
  797.  
  798.         when nn=='d1'  then
  799.         do
  800.             yw = 2.445 + zdist2
  801.             if al == 'a' then call auflhoch()
  802.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  803.         end
  804.  
  805.         when nn=='db1' then
  806.         do
  807.             yw = 2.445 + zdist2
  808.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
  809.             call ppm_SetSize(20)
  810.             call ppm_TextIntoBox(box#id, 'f')
  811.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  812.         end
  813.  
  814.         when nn=='c#1'  then
  815.         do
  816.             yw = 2.545 + zdist2
  817.             box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
  818.             call ppm_SetSize(20)
  819.             call ppm_TextIntoBox(box#id, 's')
  820.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  821.             call ppm_DrawLine(notex, zz+zdist2+3.2, (notex+0.4), zz+zdist2+3.2)
  822.         end
  823.  
  824.         when nn=='c1'  then
  825.         do
  826.             yw = 2.545 + zdist2
  827.             if al == 'a' then call auflhoch()
  828.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  829.             call ppm_DrawLine(notex, zz+zdist2+3.2, (notex+0.4), zz+zdist2+3.2)
  830.         end
  831.  
  832.     /* y-Raster der Noten - Notenhälse nach unten */
  833.  
  834.         when nn=='G#3'  then
  835.         do
  836.             yw = 1.22 + zdist2
  837.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  838.             call ppm_SetSize(20)
  839.             call ppm_TextIntoBox(box#id, 's')
  840.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  841.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  842.             call ppm_DrawLine(notex, zz+zdist2+1.4, (notex+0.4), zz+zdist2+1.4)
  843.         end
  844.  
  845.         when nn=='G3'  then
  846.         do
  847.             yw = 1.22 + zdist2
  848.             if al == 'a' then call aufltief()
  849.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  850.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  851.             call ppm_DrawLine(notex, zz+zdist2+1.4, (notex+0.4), zz+zdist2+1.4)
  852.         end
  853.  
  854.         when nn=='Gb3' then
  855.         do
  856.             yw = 1.22 + zdist2
  857.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  858.             call ppm_SetSize(20)
  859.             call ppm_TextIntoBox(box#id, 'f')
  860.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  861.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  862.             call ppm_DrawLine(notex, zz+zdist2+1.4, (notex+0.4), zz+zdist2+1.4)
  863.         end
  864.  
  865.         when nn=='F#3'  then
  866.         do
  867.             yw = 1.32 + zdist2
  868.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  869.             call ppm_SetSize(20)
  870.             call ppm_TextIntoBox(box#id, 's')
  871.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  872.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  873.         end
  874.  
  875.         when nn=='F3'  then
  876.         do
  877.             yw = 1.32 + zdist2
  878.             if al == 'a' then call aufltief()
  879.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  880.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  881.         end
  882.  
  883.         when nn=='E#3'  then
  884.         do
  885.             yw = 1.42 + zdist2
  886.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  887.             call ppm_SetSize(20)
  888.             call ppm_TextIntoBox(box#id, 's')
  889.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  890.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  891.         end
  892.  
  893.         when nn=='E3'  then
  894.         do
  895.             yw = 1.42 + zdist2
  896.             if al == 'a' then call aufltief()
  897.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  898.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  899.         end
  900.  
  901.         when nn=='Eb3' then
  902.         do
  903.             yw = 1.42 + zdist2
  904.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  905.             call ppm_SetSize(20)
  906.             call ppm_TextIntoBox(box#id, 'f')
  907.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  908.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  909.         end
  910.  
  911.         when nn=='D#3'  then
  912.         do
  913.             yw = 1.52 + zdist2
  914.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  915.             call ppm_SetSize(20)
  916.             call ppm_TextIntoBox(box#id, 's')
  917.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  918.         end
  919.  
  920.         when nn=='D3' then
  921.         do
  922.             yw = 1.52 + zdist2
  923.             if al == 'a' then call aufltief()
  924.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  925.         end
  926.  
  927.         when nn=='Db3' then
  928.         do
  929.             yw = 1.52 + zdist2
  930.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  931.             call ppm_SetSize(20)
  932.             call ppm_TextIntoBox(box#id, 'f')
  933.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  934.         end
  935.  
  936.         when nn=='C#3'    then
  937.         do
  938.             yw = 1.62 + zdist2
  939.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  940.             call ppm_SetSize(20)
  941.             call ppm_TextIntoBox(box#id, 's')
  942.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  943.         end
  944.  
  945.         when nn=='C3'     then
  946.         do
  947.             yw = 1.62 + zdist2
  948.             if al == 'a' then call aufltief()
  949.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  950.         end
  951.  
  952.         when nn=='H2'     then
  953.         do
  954.             yw = 1.72 + zdist2
  955.             if al == 'a' then call aufltief()
  956.         end
  957.         when nn=='B2'     then
  958.         do
  959.             yw = 1.72 + zdist2
  960.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  961.             call ppm_SetSize(20)
  962.             call ppm_TextIntoBox(box#id, 'f')
  963.         end
  964.  
  965.         when nn=='A#2'    then
  966.         do
  967.             yw = 1.82 + zdist2
  968.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  969.             call ppm_SetSize(20)
  970.             call ppm_TextIntoBox(box#id, 's')
  971.         end
  972.  
  973.         when nn=='A2'     then
  974.         do
  975.             yw = 1.82 + zdist2
  976.             if al == 'a' then call aufltief()
  977.         end
  978.         when nn=='Ab2'    then
  979.         do
  980.             yw = 1.82 + zdist2
  981.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  982.             call ppm_SetSize(20)
  983.             call ppm_TextIntoBox(box#id, 'f')
  984.         end
  985.  
  986.         when nn=='G#2'    then
  987.         do
  988.             yw = 1.92 + zdist2
  989.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  990.             call ppm_SetSize(20)
  991.             call ppm_TextIntoBox(box#id, 's')
  992.         end
  993.  
  994.         when nn=='G2'     then
  995.         do
  996.             yw = 1.92 + zdist2
  997.             if al == 'a' then call aufltief()
  998.         end
  999.         when nn=='Gb2'    then
  1000.         do
  1001.             yw = 1.92 + zdist2
  1002.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  1003.             call ppm_SetSize(20)
  1004.             call ppm_TextIntoBox(box#id, 'f')
  1005.         end
  1006.  
  1007.         when nn=='F#2'    then
  1008.         do
  1009.             yw = 2.02 + zdist2
  1010.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1011.             call ppm_SetSize(20)
  1012.             call ppm_TextIntoBox(box#id, 's')
  1013.         end
  1014.  
  1015.         when nn=='F2'     then
  1016.         do
  1017.             yw = 2.02 + zdist2
  1018.             if al == 'a' then call aufltief()
  1019.         end
  1020.         when nn=='E#2'    then
  1021.         do
  1022.             yw = 2.12 + zdist2
  1023.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1024.             call ppm_SetSize(20)
  1025.             call ppm_TextIntoBox(box#id, 's')
  1026.         end
  1027.  
  1028.         when nn=='E2'     then
  1029.         do
  1030.             yw = 2.12 + zdist2
  1031.             if al == 'a' then call aufltief()
  1032.         end
  1033.         when nn=='Eb2'    then
  1034.         do
  1035.             yw = 2.12 + zdist2
  1036.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  1037.             call ppm_SetSize(20)
  1038.             call ppm_TextIntoBox(box#id, 'f')
  1039.         end
  1040.  
  1041.         when nn=='D#2'    then
  1042.         do
  1043.             yw = 2.22 + zdist2
  1044.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1045.             call ppm_SetSize(20)
  1046.             call ppm_TextIntoBox(box#id, 's')
  1047.         end
  1048.  
  1049.         when nn=='D2'     then
  1050.         do
  1051.             yw = 2.22 + zdist2
  1052.             if al == 'a' then call aufltief()
  1053.         end
  1054.         when nn=='Db2'    then
  1055.         do
  1056.             yw = 2.22 + zdist2
  1057.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  1058.             call ppm_SetSize(20)
  1059.             call ppm_TextIntoBox(box#id, 'f')
  1060.         end
  1061.  
  1062.         when nn=='C#2'    then
  1063.         do
  1064.             yw = 2.32 + zdist2
  1065.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1066.             call ppm_SetSize(20)
  1067.             call ppm_TextIntoBox(box#id, 's')
  1068.         end
  1069.  
  1070.         when nn=='C2'     then
  1071.         do
  1072.             yw = 2.32 + zdist2
  1073.             if al == 'a' then call aufltief()
  1074.         end
  1075.         when nn=='H1'     then yw = 2.42 + zdist2
  1076.         when nn=='B1'     then
  1077.         do
  1078.             yw = 2.42 + zdist2
  1079.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  1080.             call ppm_SetSize(20)
  1081.             call ppm_TextIntoBox(box#id, 'f')
  1082.         end
  1083.  
  1084.         when nn=='A#1'    then
  1085.         do
  1086.             yw = 2.52 + zdist2
  1087.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1088.             call ppm_SetSize(20)
  1089.             call ppm_TextIntoBox(box#id, 's')
  1090.         end
  1091.  
  1092.         when nn=='A1'     then
  1093.         do
  1094.             yw = 2.52 + zdist2
  1095.             if al == 'a' then call aufltief()
  1096.         end
  1097.         when nn=='Ab1'    then
  1098.         do
  1099.             yw = 2.52 + zdist2
  1100.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  1101.             call ppm_SetSize(20)
  1102.             call ppm_TextIntoBox(box#id, 'f')
  1103.         end
  1104.  
  1105.         when nn=='G#1'    then
  1106.         do
  1107.             yw = 2.62 + zdist2
  1108.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1109.             call ppm_SetSize(20)
  1110.             call ppm_TextIntoBox(box#id, 's')
  1111.         end
  1112.  
  1113.         when nn=='G1'     then
  1114.         do
  1115.             yw = 2.62 + zdist2
  1116.             if al == 'a' then call aufltief()
  1117.         end
  1118.         when nn=='Gb1'    then
  1119.         do
  1120.             yw = 2.62 + zdist2
  1121.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  1122.             call ppm_SetSize(20)
  1123.             call ppm_TextIntoBox(box#id, 'f')
  1124.         end
  1125.  
  1126.         when nn=='F#1'    then
  1127.         do
  1128.             yw = 2.72 + zdist2
  1129.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1130.             call ppm_SetSize(20)
  1131.             call ppm_TextIntoBox(box#id, 's')
  1132.         end
  1133.  
  1134.         when nn=='F1'     then
  1135.         do
  1136.             yw = 2.72 + zdist2
  1137.             if al == 'a' then call aufltief()
  1138.         end
  1139.  
  1140.         when nn=='E#1'    then
  1141.         do
  1142.             yw = 2.82 + zdist2
  1143.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1144.             call ppm_SetSize(20)
  1145.             call ppm_TextIntoBox(box#id, 's')
  1146.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  1147.         end
  1148.  
  1149.         when nn=='E1' then
  1150.         do
  1151.             yw = 2.82 + zdist2
  1152.             if al == 'a' then call aufltief()
  1153.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  1154.         end
  1155.  
  1156.         when nn=='Eb1'  then
  1157.         do
  1158.             yw = 2.82 + zdist2
  1159.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  1160.             call ppm_SetSize(20)
  1161.             call ppm_TextIntoBox(box#id, 'f')
  1162.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  1163.         end
  1164.  
  1165.         when nn=='D#1'  then
  1166.         do
  1167.             yw = 2.92 + zdist2
  1168.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1169.             call ppm_SetSize(20)
  1170.             call ppm_TextIntoBox(box#id, 's')
  1171.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  1172.         end
  1173.  
  1174.         when nn=='D1'  then
  1175.         do
  1176.             yw = 2.92 + zdist2
  1177.             if al == 'a' then call aufltief()
  1178.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  1179.         end
  1180.  
  1181.         when nn=='Db1' then
  1182.         do
  1183.             yw = 2.92 + zdist2
  1184.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  1185.             call ppm_SetSize(20)
  1186.             call ppm_TextIntoBox(box#id, 'f')
  1187.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  1188.         end
  1189.  
  1190.         when nn=='C#1'  then
  1191.         do
  1192.           yw = 3.02 + zdist2
  1193.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1194.             call ppm_SetSize(20)
  1195.             call ppm_TextIntoBox(box#id, 's')
  1196.           call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  1197.           call ppm_DrawLine(notex, zz+zdist2+3.2, (notex+0.4), zz+zdist2+3.2)
  1198.         end
  1199.  
  1200.         when nn=='C1'  then
  1201.         do
  1202.           yw = 3.02 + zdist2
  1203.             if al == 'a' then call aufltief()
  1204.           call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  1205.           call ppm_DrawLine(notex, zz+zdist2+3.2, (notex+0.4), zz+zdist2+3.2)
  1206.         end
  1207.         otherwise
  1208.                do
  1209.                 call ppm_ClearStatus()
  1210.                 exit_msg("Da war ein Fehler")
  1211.                end
  1212.     end
  1213.  
  1214.         /* größe einer Notenbox */
  1215.  
  1216.         notewidht = 0.64
  1217.         noteheight = 0.97
  1218.  
  1219.  
  1220.         boxid = ppm_CreateBox(notex, yw+zz, notewidht, noteheight, 0)
  1221.         call ppm_SetSize(notepkt)
  1222.         call ppm_TextIntoBox(boxid, nw)
  1223.         bakx = notex
  1224.         notex = (notex + xw)
  1225.         if notex >=18.7 then
  1226.             do
  1227.               notex = (2+(vz*0.175))
  1228.               zz = zz + zdist
  1229.             end
  1230.      return
  1231. end
  1232. exit
  1233.  
  1234. auflhoch:
  1235. do
  1236.   Pbox = ppm_CreateBox(notex-0.34, yw+zz+0.07, 0.6, 1.2, 0)
  1237.   boxnm = ppm_DocNextBox(Pbox)
  1238.   call ppm_DeleteContents(boxnm)
  1239.   call ppm_ImportGraphic(boxnm, 'Genies:noten_pausen/Auflsng', Zeichen)
  1240.   return
  1241. end
  1242.  
  1243. aufltief:
  1244. do
  1245.   Pbox = ppm_CreateBox(notex-0.34, yw+zz-0.4, 0.6, 1.2, 0)
  1246.   boxnm = ppm_DocNextBox(Pbox)
  1247.   call ppm_DeleteContents(boxnm)
  1248.   call ppm_ImportGraphic(boxnm, 'Genies:noten_pausen/Auflsng', Zeichen)
  1249.   return
  1250. end
  1251.  
  1252. break_d:
  1253. break_e:
  1254. break_c:
  1255. halt:
  1256.     call exit_msg("User aborted Genie!")
  1257.  
  1258. exit_msg: procedure
  1259. do
  1260.     parse arg message
  1261.  
  1262.     if message ~= '' then
  1263.     call ppm_Inform(1,message,)
  1264.  
  1265.     call ppm_ClearStatus()
  1266.     call ppm_AutoUpdate(1)
  1267.     exit
  1268. end
  1269.